package AI.data
{
	
	import com.cheezeworld.GameFactory;
	import com.cheezeworld.entity.Boid;
	import com.cheezeworld.entity.BoidParams;
	import com.cheezeworld.entity.Entity;
	import com.cheezeworld.entity.EntityParams;
	import com.cheezeworld.entity.MovingEntity;
	import com.cheezeworld.rendering.EntityRenderer;
	import com.cheezeworld.rendering.SpriteRenderer;
	
	public class EntityTypes
	{		
		public static function register( a_gameFactory:GameFactory ) : void
		{
			var bParams:BoidParams;
			var eParams:EntityParams;
			
			bParams = new BoidParams( { neighborDistance:100, maxSpeed:150, maxAcceleration:15, damping:.98, radius:15, maxTurnRate:360 } );
			bParams.type = "Boid1";
			bParams.customClass = Boid;
			bParams.rendererClass = SpriteRenderer;
			bParams.rendererData.sprite = Assets.Ship;
			bParams.boundsBehavior = MovingEntity.BOUNDS_WRAP;
			a_gameFactory.registerEntityType( bParams );
			
			
			eParams = new EntityParams( { customClass:Entity, rendererClass:EntityRenderer } );
			eParams.type = "Obstacle";
			a_gameFactory.registerEntityType( eParams );
		}

	}
}